package com.sh.business.mapper;

import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import com.sh.business.domain.UserFundDetail;
import com.sh.business.domain.dto.FinancingErrorVo;
import com.sh.business.domain.vo.UserFundDetailVo;
import com.sh.common.core.enums.TransferDescEnum;
import com.sh.common.mybatis.core.mapper.BaseMapperPlus;
import org.apache.ibatis.annotations.Param;

import java.math.BigDecimal;
import java.util.List;

/**
 * 用户资产明细Mapper接口
 *
 * @author ruoyi
 * @date 2024-10-08
 */
public interface UserFundDetailMapper extends BaseMapperPlus<UserFundDetail, UserFundDetailVo> {

    /**
     * 20250311 处理理财错误数据
     * @return
     */
    List<FinancingErrorVo> queryFinancingError();

    /**
     * 查询动态空投数量szpn
     * @return
     */
    BigDecimal queryDynamicsAirdropSzpnAmount();

    /**
     * 查询静态空投数量szpn
     * @return
     */
    BigDecimal queryStaticAirdropSzpnAmount();

    /**
     * 查询szpn空投兑换scroll数量
     * @return
     */
    BigDecimal szpnExchangeScrollAmount();

    /**
     * 查询收益算力
     * @return
     */
    BigDecimal queryIncomeComputility(@Param("userId") Long userId);

    /**
     * 查询我的团队-今日新增团队业绩
     * @param userId
     * @return
     */
    BigDecimal queryTodayMyTeamComputility(Long userId);

    /**
     * 今日产出 A
     */
    BigDecimal queryTodayMiningAleAmount();

    /**
     * 今日产出 S
     */
    BigDecimal queryTodayMiningScrAmount();

    /**
     * 累计产出 A
     */
    BigDecimal queryTotalMiningAleAmount();

    /**
     * 累计产出 S
     */
    BigDecimal queryTotalMiningScrAmount();

    /**
     * 发放算力累计 ， 老用户拨出算力 = 平台总算力 - 发放算力
     * @return
     */
    BigDecimal querySendComputility();

    /**
     * 查询发放市场津贴
     * @return
     */
    BigDecimal queryMarketAllowanceAmount();


}
